#include<bits/stdc++.h>
using namespace std;
int main(){
	vector<int> a;
	for(int i=0;i<6;i++) a.push_back(i);
	for(int i=0;i<6;i++) cout<<a[i]<<" ";
	cout<<endl;
	cout<<"---------------------";
	cout<<endl;
	reverse(a.begin()+0,a.begin()+2);//翻转的是下标为0到下标为1 
	for(int i=0;i<6;i++) cout<<a[i]<<" ";
	cout<<"---------------------";
	cout<<endl; 
	reverse(a.begin(),a.begin()+a.size());//!!!!!!!!!!
	 for(int i=0;i<6;i++) cout<<a[i]<<" ";
	 	cout<<endl;
	return 0;
} 
/*
    翻转整个数组：reverse(a.begin(),a.end())
                或者：reverse(a.begin(),a.begin()+a.size());
    reverse(a.begin()+i,a.begin()+j) 是翻转从下标为i的地方到下标为j-1的地方
    eg: i=1,j=4 那么就是翻转下标为1到下标为3   [1,(2,3,4),5,6,7] -->  [1,(4,3,2),5,6,7]
*/